#pragma once
#include <string>
#include <stdexcept>
#include "TLV.hpp"
using namespace std;

class Packet {
public:
    int type;
    int length;
    string _msg;

    Packet();
    Packet(int t, int l, const string& m);
    ~Packet();

    void setType(int t);//设置类型
    void setLength(int l);//设置长度
    void setMsg(const string& m);//设置消息内容

    // String类型的TVL格式的消息转为Packet
    static Packet StringtoPacket(const string& tlvData);
    //Packet转为TLV 
    static TLV PackettoTLV(const Packet& PacketData);
};